Add gtk_window_[sg]et_deletable. Add
authorMatthias Clasen <mclasen@redhat.com>
Tue, 30 Aug 2005 05:06:36 +0000 (05:06 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Tue, 30 Aug 2005 05:06:36 +0000 (05:06 +0000)
2005-08-30  Matthias Clasen  <mclasen@redhat.com>

* gtk/gtk-sections.txt: Add gtk_window_[sg]et_deletable.
Add gtk_selection_data_targets_include_uri.

docs/reference/ChangeLog
docs/reference/gtk/gtk-sections.txt
gtk/gtk.symbols
gtk/gtkselection.c
gtk/gtkselection.h

index baf49e9d9f1b9480918478e2294db8d6328015c6..f8cec45e74ec8d2be05e3ca99f16b338b72ec12b 100644 (file)
@@ -1,6 +1,7 @@
 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtk-sections.txt: Add gtk_window_[sg]et_deletable.
+       Add gtk_selection_data_targets_include_uri.
 
 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
 
index c2e43b41f107c8e70c3fb0be7be148a4db7e8c32..26b4e4a4419d7197aeac22102c6eb063c32e7e43 100644 (file)
@@ -5146,6 +5146,7 @@ gtk_selection_data_get_uris
 gtk_selection_data_get_targets
 gtk_selection_data_targets_include_image
 gtk_selection_data_targets_include_text
+gtk_selection_data_targets_include_uri
 gtk_selection_remove_all
 gtk_selection_clear
 gtk_selection_data_copy
index 1cd9e596e78d5e2b79461255d81d5d4624b557c0..5e31af30f48a141cbc145d650b1a5e7e9005ee81 100644 (file)
@@ -2611,6 +2611,7 @@ gtk_selection_data_set_text
 gtk_selection_data_set_uris
 gtk_selection_data_targets_include_image
 gtk_selection_data_targets_include_text
+gtk_selection_data_targets_include_uri
 gtk_selection_owner_set
 gtk_selection_owner_set_for_display
 gtk_selection_remove_all
index cb5e872ca289f91c391470254b4458f17c8255d1..57294758fa527f4f9d5c3f1b41615acfeb6078c6 100644 (file)
@@ -1587,6 +1587,8 @@ gtk_selection_data_targets_include_text (GtkSelectionData *selection_data)
   gint i;
   gboolean result = FALSE;
 
+  /* Keep in sync with gtk_target_list_add_text_targets()
+   */
   init_atoms ();
 
   if (gtk_selection_data_get_targets (selection_data, &targets, &n_targets))
@@ -1638,6 +1640,8 @@ gtk_selection_data_targets_include_image (GtkSelectionData *selection_data,
   GtkTargetList *list;
   GList *l;
 
+  /* Keep in sync with gtk_target_list_add_image_targets()
+   */
   init_atoms ();
 
   if (gtk_selection_data_get_targets (selection_data, &targets, &n_targets))
@@ -1659,6 +1663,49 @@ gtk_selection_data_targets_include_image (GtkSelectionData *selection_data,
 
   return result;
 }
+
+/**
+ * gtk_selection_data_targets_include_uri:
+ * @selection_data: a #GtkSelectionData object
+ * 
+ * Given a #GtkSelectionData object holding a list of targets,
+ * determines if any of the targets in @targets can be used to
+ * provide a list or URIs.
+ * 
+ * Return value: %TRUE if @selection_data holds a list of targets,
+ *   and a suitable target for text is included, otherwise %FALSE.
+ *
+ * Since: 2.10
+ **/
+gboolean
+gtk_selection_data_targets_include_uri (GtkSelectionData *selection_data)
+{
+  GdkAtom *targets;
+  gint n_targets;
+  gint i;
+  gboolean result = FALSE;
+
+  /* Keep in sync with gtk_target_list_add_uri_targets()
+   */
+  init_atoms ();
+
+  if (gtk_selection_data_get_targets (selection_data, &targets, &n_targets))
+    {
+      for (i=0; i < n_targets; i++)
+       {
+         if (targets[i] == text_uri_list_atom)
+           {
+             result = TRUE;
+             break;
+           }
+       }
+
+      g_free (targets);
+    }
+
+  return result;
+}
+
          
 /*************************************************************
  * gtk_selection_init:
index 70985b8435dd164e1c1fd943cc191da6b1251a46..a37b3f35affc4338984a126b66db9b68e4e93bb8 100644 (file)
@@ -155,6 +155,7 @@ gboolean gtk_selection_data_get_targets          (GtkSelectionData  *selection_d
 gboolean gtk_selection_data_targets_include_text (GtkSelectionData  *selection_data);
 gboolean gtk_selection_data_targets_include_image (GtkSelectionData  *selection_data,
                                                   gboolean           writable);
+gboolean gtk_selection_data_targets_include_uri  (GtkSelectionData  *selection_data);
 
 /* Called when a widget is destroyed */